/*
 * techniquewrapper.h
 *
 *  Created on: 20/11/2012
 *      Author: cvan680
 */

#ifndef MFTG_TECHNIQUEWRAPPER_H_
#define MFTG_TECHNIQUEWRAPPER_H_

using std::string;

namespace voreen {

enum TechniqueCodes {
	START = 999,
	FIELD_VECTOR = 000,
	FIELD_SCALAR = 001,

	VF_LIC = 100,
	VF_ARROWPLOT = 101,
	VF_STREAMLINES = 102,

	SF_COLOURMAP = 200,
	SF_ISOLINES = 201,

	IMGPROC_GAUSSIAN = 300,
	IMGPROC_EDGES = 301,

	IMGCOMP_OVERLAY = 400,
	IMGCOMP_BLEND = 401,
	IMGCOMP_BUMPMAP = 402
};


enum TexType {
	UNKNOWN = -1,
	SCALAR = 1,
	VECTOR = 2,
	COLOUR = 3
};

class TechniqueWrapper {

public:
	TechniqueWrapper();
	TechniqueWrapper(string identifier, string description, int uniqueid, int textype);
	string identifier_;
	string description_;
	int uniqueID_;
	int textype_;
};



class TechniqueMap {
public:
	TechniqueMap();

	TechniqueWrapper get(string key);
	TechniqueWrapper getNULL();


};

}


#endif /* MFTG_TECHNIQUEWRAPPER_H_ */
